<?php
namespace pinduoduo\Request;

use pinduoduo\AbstractInterface\Request;

class PddDdkCashgiftDataQueryRequest extends Request
{

    /**
     * 查询多多礼金效果数据
     * @var string
     */
    private $type = 'pdd.ddk.cashgift.data.query';

    /**
     * 礼金ID，支持根据礼金ID查询
     * @var
     */
    private $cashGiftId;

    /**
     * 礼金创建结束时间，查询该时间段内创建的所有礼金效果数据（礼金维度）。note：此时间为时间戳，指格林威治时间 1970 年01 月 01 日 00 时 00 分 00 秒(北京时间 1970 年 01 月 01 日 08 时 00 分 00 秒)起至现在的总秒数
     * @var
     */
    private $endTime;

    /**
     * 分页数
     * @var
     */
    private $page;

    /**
     * 每页结果数
     * @var
     */
    private $pageSize;

    /**
     * 礼金创建起始时间，查询该时间段内创建的所有礼金效果数据（礼金维度）。note：此时间为时间戳，指格林威治时间 1970 年01 月 01 日 00 时 00 分 00 秒(北京时间 1970 年 01 月 01 日 08 时 00 分 00 秒)起至现在的总秒数
     * @var
     */
    private $startTime;

    public function setType($type)
    {
        $this->type = $type;
    }

    public function getType()
    {
        return $this->type;
    }

    public function setCashGiftId($cashGiftId)
    {
        $this->cashGiftId = $cashGiftId;
    }

    public function getCashGiftId()
    {
        return $this->cashGiftId;
    }

    public function setEndTime($endTime)
    {
        $this->endTime = $endTime;
    }

    public function getEndTime()
    {
        return $this->endTime;
    }

    public function setPageSize($pageSize)
    {
        $this->pageSize = $pageSize;
    }

    public function getPageSize()
    {
        return $this->pageSize;
    }

    public function setPage($page)
    {
        $this->page = $page;
    }

    public function getPage()
    {
        return $this->page;
    }

    public function setStartTime($startTime)
    {
        $this->startTime = $startTime;
    }

    public function getStartTime()
    {
        return $this->startTime;
    }

    public function getParams()
    {
        $params = [
            'type'         => $this->type,
            'cash_gift_id' => $this->cashGiftId,
            'end_time'     => $this->endTime,
            'page'         => $this->page,
            'page_size'    => $this->pageSize,
            'start_time'   => $this->startTime,
        ];
        return array_filter($params);
    }
}
